package com.hehe.Repository;

import com.hehe.POJO.Tb_user;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.transaction.annotation.Transactional;

public interface UserRepository extends JpaRepository<Tb_user, Long> {

    // 不需要 service 层也可以跑通程序
//    Tb_user findByUsernameAndAge(String username, Integer age);

    // @Modifying 注解，这通常用于更新或删除操作
//    @Transactional
//    @Modifying
//    @Query("UPDATE T_user q SET q.age = q.age + 1 WHERE q.id = :id")
//    void updateLikeCountById(Integer id);

//你在定义自定义查询时，使用了 @Modifying 注解，这通常用于更新或删除操作
// 而你这里的查询操作应该使用 @Query 注解，
// 不需要 @Modifying 和 @Transactional 注解。
// 另一个问题是，select * from Qq_space_user_like q 在 JPQL（Java Persistence Query Language）中是错误的，
// 因为 JPQL 不支持 select * 语法。你需要显式地列出要选择的实体。
//    @Query("SELECT q FROM Qq_space_user_like q WHERE q.username = :username AND q.qq_space_id = :qq_space_id")
//    T_user findByUsernameAndQq_space_id(String username, Integer qq_space_id);


// delete 操作
//    @Transactional
//    @Modifying
//    @Query("DELETE FROM T_user q WHERE q.id = :id")
//    void deleteById(Integer id);
// 或者
//    void deleteById(Integer id);

}



